RHEL系(CentOS)---ddコマンドを利用してOSバックアップを簡単に実施できます。※WindowsのOSバックアップもddコマンドが利用可能であれば取得可能
そのコマンドが
dd if=/dev/sdX of=/dev/sdY bs=[バイト数]※sdX、sdYの箇所-->OK:sda・sdbと指定-->NG:sda1・sdb1と指定if=コピー元のデバイス名of=コピー先のデバイス名bs=1回に読み書きするブロックサイズ
注意事項
デバイスのディスク容量はコピー元と合わせること
ddコマンドでOSバックアップを取る理由
1.OSデータをcpコマンドで別のファイルシステムにコピーしてもそのデバイスでOSを起動させることはできません。それは、grub、mbr(マスターブートレコード)の設定ができていないからです。2.ddコマンドでコピーすれば、それらを気にせずにOSデバイスとしてコピーができます。完全一致のすなわちクローンを作成することができます。
ddコマンドのメリット
OSのバックアップ(クローン)をLinux標準コマンドで簡単に作成が可能OSのバックアップツールが不要障害対応で一時的にOSバックアップを作成して検証に利用すことが可能 (使い終わったらすぐに削除ができる)コマンド実行例
dd if=/dev/sde of=/dev/sdd bs=256M※bsオプションによりdd実行処理速度が大きく変わります。下記、参考情報にてご確認ください
実際にddコマンドを利用したOSバックアップ(Linux)とOS起動(Linux)までの流れを紹介※下記「3.」にてddコマンドを利用
上記、図の「補足」のようにサーバを起動する場合「3.」でコピー後に/dev/sdd1を仮に「/mnt」でマウントして「/mnt/etc/fstab」ファイルで不要なマウントポイントを「#」でコメントアウトをしてからご利用ください。※「/etc/fstab」ファイルと間違わないように注意
fstabの修正を実施しておかないと、メンテナンスモードで起動してきたり起動に時間がかかったりして、正しくOSが起動しない場合があります。
実際の画面で確認1.コピー元とディスク容量を合わせてデバイスを準備コピー元(sde)、コピー先(sdd)となりディスク容量が同じ
※上記「3.」の詳細を解説
2.ddコマンドを実行「if=」がコピー元(sde)、「of=」がコピー先(sdd)
3.ファイルシステムを含めてコピーが完成
参考情報(bsオプションのチューニングによるddコマンド実行速度)bsオプション誤ると実行速度が遅くなります。また、bsの値のメモリを最低でも利用されてしまうのでメモリの空き状況にも注意してチューニングしてください。
計測環境CPU:インテル(i7-9750H)6コア/12スレッド/2.60GHzメモリ:32GSSD:512G NVMeSSD
1位[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd bs=256M10737418240 バイト (11 GB) コピーされました、 15.2055 秒、 706 MB/秒
2位[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd bs=1M10737418240 バイト (11 GB) コピーされました、 15.8076 秒、 679 MB/秒
3位[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd bs=32M10737418240 バイト (11 GB) コピーされました、 15.4216 秒、 696 MB/秒
4位[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd bs=1024M10737418240 バイト (11 GB) コピーされました、 16.5587 秒、 648 MB/秒
5位[root@isleofhoso03 datasdc1]# dd if=/dev/sde of=/dev/sdd10737418240 バイト (11 GB) コピーされました、 227.332 秒、 47.2 MB/秒